IAM ユーザー・プロファイルの作成

インストーラー・ユーザー・プロファイルは、AWS での IBM Spectrum Virtualize for Public Cloud ソフトウェアのデプロイメントに必要です。これには、購入、インスタンスの作成、および構成に関するリソースの削除に関連するアクションのための追加権限も含まれます。インストーラー・ユーザー・プロファイルは、AWS Marketplace 内でインストール・テンプレートを実行する前に AWS IAM 管理コンソールで作成する必要があります。権限が割り当てられていないと、IBM Spectrum Virtualize for Public Cloud ソフトウェアを正しくインストールするために必要なアクションは失敗します。

AWS のデフォルトの管理者プロファイルを使用して IBM Spectrum Virtualize for Public Cloud ソフトウェアをインストールすることも、また、ソフトウェアのデプロイに必要な権限のみを含むインストーラー・ユーザー・プロファイルを作成することもできます。詳しくは、AWS での IAM ユーザー・プロファイルと権限の計画を参照してください。

インストーラー・ユーザー・プロファイルを作成するには、以下のステップを実行します。
  1. AWS のデフォルトの管理者プロファイルを使用して AWS マネジメント・コンソールにログオンします。
  2. 「IAM」を選択します。
  3. 「ポリシー (Policies)」 > 「ポリシーの作成 (Create policy)」を選択します。
  4. 「JSON」タブを選択し、次の JSON コンテンツを追加します。
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "ec2:CreateDhcpOptions",
                    "ec2:AuthorizeSecurityGroupIngress",
                    "ec2:ModifyVolumeAttribute",
                    "aws-marketplace:ListBuilds",
                    "ec2:DeleteVpcEndpoints",
                    "ec2:CreateKeyPair",
                    "secretsmanager:DeleteSecret",
                    "ec2:AttachInternetGateway",
                    "iam:PutRolePolicy",
                    "iam:AddRoleToInstanceProfile",
                    "ec2:DeleteRouteTable",
                    "cloudformation:DescribeStackEvents",
                    "ec2:StartInstances",
                    "ec2:CreateNetworkInterfacePermission",
                    "ec2:RevokeSecurityGroupEgress",
                    "ec2:CreateRoute",
                    "ec2:CreateInternetGateway",
                    "cloudformation:UpdateStack",
                    "ec2:DeleteInternetGateway",
                    "sns:Subscribe",
                    "s3:DeleteObject",
                    "cloudformation:ListStackResources",
                    "iam:GetRole",
                    "ec2:CreateTags",
                    "ec2:ModifyNetworkInterfaceAttribute",
                    "sns:CreateTopic",
                    "iam:DeleteRole",
                    "ec2:RunInstances",
                    "ec2:StopInstances",
                    "ec2:AssignPrivateIpAddresses",
                    "ec2:DisassociateRouteTable",
                    "ec2:CreateVolume",
                    "ec2:RevokeSecurityGroupIngress",
                    "ec2:CreateNetworkInterface",
                    "s3:PutObject",
                    "cloudformation:GetStackPolicy",
                    "ec2:CreateDefaultVpc",
                    "cloudformation:DeleteStack",
                    "ec2:DeleteDhcpOptions",
                    "ec2:DeleteNatGateway",
                    "ec2:CreateSubnet",
                    "iam:GetRolePolicy",
                    "secretsmanager:TagResource",
                    "cloudformation:CreateUploadBucket",
                    "iam:CreateInstanceProfile",
                    "ec2:AttachVolume",
                    "ec2:DisassociateAddress",
                    "aws-marketplace:Unsubscribe",
                    "ec2:CreateNatGateway",
                    "ec2:CreateVpc",
                    "cloudformation:UpdateTerminationProtection",
                    "sns:ListTopics",
                    "iam:PassRole",
                    "ec2:CreateDefaultSubnet",
                    "iam:DeleteRolePolicy",
                    "s3:DeleteBucket",
                    "iam:DeleteInstanceProfile",
                    "ec2:ReleaseAddress",
                    "ec2:RebootInstances",
                    "aws-marketplace:ViewSubscriptions",
                    "ec2:AssociateDhcpOptions",
                    "ec2:ModifyInstancePlacement",
                    "sns:GetTopicAttributes",
                    "iam:ListRoles",
                    "ec2:Describe*",
                    "s3:ListAllMyBuckets",
                    "ec2:DeleteSubnet",
                    "iam:RemoveRoleFromInstanceProfile",
                    "iam:CreateRole",
                    "s3:CreateBucket",
                    "sns:Unsubscribe",
                    "ec2:AssociateRouteTable",
                    "ec2:DeleteVolume",
                    "ec2:CreatePlacementGroup",
                    "ssm:DescribeParameters",
                    "ec2:Get*",
                    "ec2:DetachVolume",
                    "cloudformation:DescribeStackResources",
                    "ec2:CreateRouteTable",
                    "ec2:DeleteNetworkInterface",
                    "ssm:GetParameters",
                    "ec2:DetachInternetGateway",
                    "cloudformation:DescribeStacks",
                    "s3:GetObject",
                    "cloudformation:GetTemplate",
                    "ec2:DeleteVpc",
                    "ec2:AssociateAddress",
                    "ec2:DeleteKeyPair",
                    "ec2:DeleteTags",
                    "sns:DeleteTopic",
                    "secretsmanager:CreateSecret",
                    "aws-marketplace:Subscribe",
                    "ec2:DeleteNetworkInterfacePermission",
                    "ec2:CreateSecurityGroup",
                    "ec2:ModifyVpcAttribute",
                    "ec2:AuthorizeSecurityGroupEgress",
                    "cloudformation:ListStacks",
                    "ec2:TerminateInstances",
                    "ec2:DetachNetworkInterface",
                    "ec2:DeletePlacementGroup",
                    "iam:GetInstanceProfile",
                    "ec2:DeleteRoute",
                    "iam:ListInstanceProfiles",
                    "cloudformation:GetTemplateSummary",
                    "ec2:AllocateAddress",
                    "aws-marketplace:StartBuild",
                    "cloudformation:CreateStack",
                    "ec2:CreateVpcEndpoint",
                    "ec2:DeleteSecurityGroup",
                    "ec2:AttachNetworkInterface",
                    "cloudformation:CreateChangeSet",   
                    "cloudformation:DeleteChangeSet,"
                    "cloudformation:DescribeChangeSet",
                    "cloudformation:SetStackPolicy"
                ],
                "Resource": "*"
            }
        ]
    }
  5. 「ポリシーのレビュー (Review Policy)」をクリックし、ポリシーの名前 (例えば、installerpolicy) を追加します。「ポリシーの作成 (Create Policy)」をクリックします。
  6. 「ユーザー (Users)」 > 「ユーザーの追加 (Add user)」を選択します。
  7. 名前とパスワードを入力し、「アクセス・タイプ (Access type)」「AWS マネジメント・コンソールのアクセス (AWS Management Console access)」が選択されていることを確認します。オプションで「プログラムによるアクセス (Programmatic access)」を選択できます。「次の手順: 権限 (Next: Permissions)」をクリックします。
  8. 「既存ポリシーの直接接続 (Attach existing policies directly)」を選択し、ステップ 5 で作成した新規ポリシーを選択します。「次の手順: タグ (Next: Tags)」をクリックします。
  9. 必ず、インストーラー・ユーザー・プロファイルの E メール・アドレスを含むタグを追加します。
追加のユーザー・プロファイルを、独自の IT セキュリティー・ポリシーに基づいて定義できます。これらのユーザーの権限は、日常の作業の一環で行うアクションに制限することをお勧めします。これらのユーザー・プロファイルは、IBM Spectrum Virtualize for Public Cloud ソフトウェアを EC2 インスタンスにインストールする場合は必要ありません。権限を限定したユーザー・プロファイルを作成する場合はインストーラー・ユーザー・プロファイルの手順を使用しますが、カスタマイズされたポリシーの作成時に次の JSON コンテンツを使用します。
{
   "Version": "2020-10-17",
   "Statement": [
       {
           "Sid": "VisualEditor0",
           "Effect": "Allow",
           "Action": [
               "ec2:RebootInstances",
               "iam:GetRole",
               "ec2:Describe*",
               "ec2:StartInstances",
               "iam:ListRoleTags",
               "iam:ListAttachedRolePolicies",
               "iam:ListRoles",
               "iam:ListPolicies",
               "ec2:StopInstances",
               "iam:ListRolePolicies",
               "iam:ListInstanceProfiles",
               "iam:GetRolePolicy",
               "ec2:Get*",
            ],
           "Resource": "*"
       }
   ]
}